The Mur' Verification System
نویسنده
چکیده
Computer Systems Laboratory Stanford University Email: [email protected] Abstract. This is a brief overview of the Mur' verification system. The Mur' description language Mur' is both a description language and a verifier for finite state concurrent systems [DDHY92]. It is appropriate for protocols and finite-state systems which can reasonably be modelled as a collection of processes that run at arbitrary speeds, where the steps of the processes interleave (only one process takes a step at any time), and where the processes interact by reading and writing shared variables. The Mur' verifier works by explicitly generating states and storing them in a hash table. We have put some effort into developing state reduction techniques, including symmetry reduction [ID93a, ID93b] , exploitation of reversible rules [ID96a], and verification of systems with varying numbers of replicated components [ID96b]. We have also investigated probabilistic verification techniques in Mur' [SD95c]. The Mur' description language was inspired by Misra and Chandy’s Unity formalism [CM88]. A Mur' description consists of a collection of declarations of constants, data types such as subranges, records, and arrays, global variables, transition rules (which are guarded commands), start rules, and invariants. The rules are similar to compound statements Pascal or Modula. Indeed, a rule can be arbitrarily complex, yet it is still executed atomically, meaning that the other rules cannot interfere. A state consists of the current values of the global variables. An execution of a Mur' program is any sequence of states that can be generated by starting in one of the states generated by a start rule, then repeatedly selecting a rule and executing it. Executing a rule generally changes the state, because the rule assigns to the global variables. Mur' is nondeterministic: there can be many executions, varying according to which rule was selected at each step of the execution. A user can encode one of several concurrent processes by declaring variables for the process state and providing rules to capture its behavior. The behavior of several processes can be simulated by forming the union of the state variables and rules into a single Mur' program. Rule selection then simulates scheduling choices (the process whose rule is chosen runs next) as well as nondeterministic choice within a process.
منابع مشابه
Automatic verification of the SCI cache coherence protocol
This paper describes an ongoing eeort to verify the cache coherence protocol of the IEEE/ANSI Standard for Scalable Coherent Interface using the Mur' veriication system. A model of the typical set protocol was constructed in the Mur' description language. This model was augmented with a speciication of properties necessary for cache coherence. The Mur' veriication system automatically checks if...
متن کاملAn Executable Specification and Verifier for Relaxed Memory Order
ÐThe Mur' description language and verification system for finite-state concurrent systems is applied to the problem of specifying a family of multiprocessor memory models described in the SPARC Version 9 architecture manual. The description language allows for a straightforward operational description of the memory model which can be used as a specification for programmers and machine architec...
متن کاملIntegrating RAM and Disk Based Verification within the Mur-phi Verifier
We present a verification algorithm that can automatically switch from RAM based verification to disk based verification without discarding the work done during the RAM based verification phase. This avoids having to choose beforehand the proper verification algorithm. Our experimental results show that typically our integrated algorithm is as fast as (sometime faster than) the fastest of the t...
متن کاملMotor Unit Number Estimation in Normal and Parkinsonism Model of Medial Gastrocnemius Muscle in Rats
Motor units (MUs) reflect the function of the central nervous motor system. Thus, the estimated MU number is a good option to investigate the functional movement disorder in the Parkinson’s disease (PD). The purpose of this study was to compare the estimated MUs number in the medial gastrocnemius (MG) muscle of the normal rats and those with the Parkinsonism. The MG muscle of two age-matche...
متن کاملStable isotope analysis (δ13C and δ15N) of soil nematodes from four feeding groups
Soil nematode feeding groups are a long-established trophic categorisation largely based on morphology and are used in ecological indices to monitor and analyse the biological state of soils. Stable isotope ratio analysis ((13)C/(12)C and (15)N/(14)N, expressed as δ (13)C and δ (15)N) has provided verification of, and novel insights into, the feeding ecology of soil animals such as earthworms a...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996